package com.tarena.lbs.coupon.dao.repository;

import com.tarena.lbs.base.protocol.pager.PageResult;
import com.tarena.lbs.coupon.pojo.po.CouponPO;
import com.tarena.lbs.coupon.pojo.query.UserCouponQuery;
import com.tarena.lbs.coupon.pojo.vo.UserCouponsVO;

public interface CouponRepository {
    /**
     * 保存优惠券信息
     * @param couponPO 优惠券实体
     * @return 影响行数
     */
    int insert(CouponPO couponPO);
    
    /**
     * 根据ID更新优惠券信息
     * @param couponPO 优惠券实体
     * @return 影响行数
     */
    int updateById(CouponPO couponPO);
    
    /**
     * 根据ID查询优惠券信息
     * @param id 优惠券ID
     * @return 优惠券实体
     */
    CouponPO selectById(Integer id);

    PageResult<UserCouponsVO> receiveList(UserCouponQuery couponQuery);
}